1. Field of the Invention
The present invention relates a technology for controlling voxel data generated from three dimensional data.
2. Description of the Related Art
Conventionally, three dimensional models are converted into a voxel format so that the three dimensional models can be controlled and processed. Examples of the three dimensional models are a three dimensional polygon model created by means of three dimensional computer aided design (CAD), finite element data that is output by using an analysis simulator, and three dimensional volume data that is measured in a computed tomography (CT) scan.
Generally, a large amount of memory is required to represent such three dimensional models in the voxel format. For example, voxel data of a CT scan having a size of 512×512×512 includes approximately 100 million voxels, and each voxel includes a physical quantity and data such as coordinates, contiguous relations etc. Thus, the total amount of memory typically exceeds 1 gigabyte (GB). Accordingly, such large voxel data cannot be processed with commonly used data processors such as a personal computer (PC).
However, three dimensional models are now used in a larger scale because application of three dimensional models has expanded from a part of a product to the entire product. Accordingly, there is a need to efficiently reduce the number of voxels.
Japanese Patent Laid-Open Publication No. 2000-182081 discloses a three-dimensional data controller that controls voxel data, which is generated by subjecting three dimensional data to a voxel splitting process, by distributing the voxel data to hierarchical nodes.
To be specific, the entire space of the three dimensional data is treated as a root node, and the root node is split into eight hierarchical nodes. If a three dimensional model is included in a split area, the three-dimensional data controller carries out a voxel splitting process to further split the split area into eight parts. The voxel splitting process is recursively carried out until a three dimensional model is not included in the split area, or only a surface part of the three dimensional model is included in the split area, or the voxel data is split into hierarchies of predetermined depth.
As a result, an area of the three dimensional model having large curvatures is split into minute voxels, while an area with negligible variations in shape is split into large voxels, thereby enabling to reduce the number of voxels.
However, in the conventional technology, the voxel data can be reduced only to a limited extent. Especially, if the technology is used for a large scale three dimensional model, a large number of three dimensional models are included in the split areas, thereby resulting in a massive amount of voxel data.
Moreover, when the voxel data is large in scale, it is time consuming to perform data processing (such as a plotting processing, a shape expanding processing, or an edge extraction processing) on such voxel data.